-
Notifications
You must be signed in to change notification settings - Fork 50
Implementing a new Data Assimilation Observation Operator #62
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
hga007
wants to merge
18
commits into
develop
Choose a base branch
from
feature/obs_operator
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…aged observations
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR implements a new ROMS data assimilation observation operator. The basic principles of the new IODA-type file for ROMS are as follows:
roms_obs.F, is introduced to store the input observation data, which is only read once. It has the following two CLASS objects:obs_dataandobs_pool. And theobs_poolobject is a vector, pool(:), set of TYPE (obs_data) observations separated by their type, source, or control vector variable. It can load native (old) or IODA (new) observation NetCDF files for data assimilation.unique.Fto compute the unique values of a vector, such that,Aout is a vector of the unique values, and Iout is an index vector of the first occurrence of each repeated value. It is similar to the MATLAB unique function.
The NetCDF4 schema for CODAR velocity data is as follows: momentum horizontal vector components at -2 m
A new Fortran 2003 module,$\boldsymbol{\rm{H(X^{s}_{j})}}$ where superscript s indicates background (s=b) or analysis (s=a) state vector. It also computes its transpose HT for adjoint kernel forcing. It has the following CLASS object
roms_hofx.F, is added to compute and storeobs_hofx:The design is to have several objects of TYPE
obs_hoxfto compute and store nonlinear, tangent linear, adjoint, background error, innovation, increment, and residual vectors. We can write IODA-type, showing several diagnostic Groups to analyze how the observations affected the data assimilation. Currently, we haveBackgroundError,hofxInitial,hofxFinal,Innovation,Increment, andResidual.Caution
The branch
feature/obs_operatoris still under development and is not ready for use.Issue(s) addressed
None.
Impacts
It allows complex observation operators with averaging and other filtering algorithms that are currently under development.
Dependencies
None
Checklist